gtk4.git
10 years agowin32: use the same type as the prototype
Ignacio Casal Quinteiro [Fri, 16 Oct 2015 07:07:02 +0000 (09:07 +0200)]
win32: use the same type as the prototype

10 years agoinspector: remove gtk_text_buffer_get_iter_at_line_index() workaround
Sébastien Wilmet [Thu, 15 Oct 2015 12:10:00 +0000 (14:10 +0200)]
inspector: remove gtk_text_buffer_get_iter_at_line_index() workaround

The function is now safe to use.

https://bugzilla.gnome.org/show_bug.cgi?id=735341

10 years agotextbuffer: nicer get_iter functions
Sébastien Wilmet [Thu, 15 Oct 2015 08:43:10 +0000 (10:43 +0200)]
textbuffer: nicer get_iter functions

Avoid crashes when passing an invalid location to a
gtk_text_buffer_get_iter_at_*() function.

A boolean is returned to know if @iter has been set to the exact
location.

Unit tests are added.

https://bugzilla.gnome.org/show_bug.cgi?id=735341

10 years agoUpdated Slovak translation
Dušan Kazik [Fri, 16 Oct 2015 06:31:32 +0000 (06:31 +0000)]
Updated Slovak translation

10 years agoUpdated Slovak translation
Dušan Kazik [Fri, 16 Oct 2015 06:26:53 +0000 (06:26 +0000)]
Updated Slovak translation

10 years agoSplit off a private header for GtkTextBuffer
Matthias Clasen [Fri, 16 Oct 2015 03:04:44 +0000 (23:04 -0400)]
Split off a private header for GtkTextBuffer

This avoids polluting the installed header with private symbols.

10 years agoImprove text a11y test
Matthias Clasen [Fri, 16 Oct 2015 02:35:38 +0000 (22:35 -0400)]
Improve text a11y test

Test appending text as well as replacing the entire text.
Insert non-ASCII text to verify offsets are correct.

10 years agofile chooser: Avoid search interruption
Matthias Clasen [Fri, 16 Oct 2015 00:53:43 +0000 (20:53 -0400)]
file chooser: Avoid search interruption

When the search entry is shown, the 'special' nature of
., ~ and / should not trigger the location entry, because
that interrupts the search and is likely not what the
user intended.

https://bugzilla.gnome.org/show_bug.cgi?id=756505

10 years agoentry completion: Only grab the device if we have one
Matthias Clasen [Fri, 16 Oct 2015 00:16:54 +0000 (20:16 -0400)]
entry completion: Only grab the device if we have one

When the entry completion is popped up from a timeout, we may
not have a device. In that case, don't call gdk_device_grab,
do avoid criticals.

10 years agoscrolled window: Protect against nameless devices
Matthias Clasen [Thu, 15 Oct 2015 20:06:15 +0000 (16:06 -0400)]
scrolled window: Protect against nameless devices

It seems that gdk_device_get_name() can return NULL.
We should not crash if that happens.

https://bugzilla.gnome.org/show_bug.cgi?id=756625

10 years agogtkplacesview: align spinner with header label
Carlos Soriano [Thu, 24 Sep 2015 09:54:58 +0000 (11:54 +0200)]
gtkplacesview: align spinner with header label

Use the box margin top instead of the label margin top,
so the spinner remains aligned with the header label.

https://bugzilla.gnome.org/show_bug.cgi?id=756568

10 years agogtkplacesview: plug leak
Carlos Soriano [Wed, 14 Oct 2015 20:04:35 +0000 (22:04 +0200)]
gtkplacesview: plug leak

https://bugzilla.gnome.org/show_bug.cgi?id=756568

10 years agogtkplacesview: remove hover color from rows
Carlos Soriano [Thu, 24 Sep 2015 12:49:30 +0000 (14:49 +0200)]
gtkplacesview: remove hover color from rows

Since other views are not using hover neither

https://bugzilla.gnome.org/show_bug.cgi?id=756568

10 years agogtkplacesview: add a clear button to address entry
Carlos Soriano [Thu, 24 Sep 2015 09:26:59 +0000 (11:26 +0200)]
gtkplacesview: add a clear button to address entry

So it allows a quick way to clear the entry.

https://bugzilla.gnome.org/show_bug.cgi?id=756568

10 years agogtkplacesview: rotate server list icon on toggled
Carlos Soriano [Thu, 24 Sep 2015 09:04:39 +0000 (11:04 +0200)]
gtkplacesview: rotate server list icon on toggled

Disclosure triangles are usually used pointing down, however
in this case the popover spawns in the upper direction, which
makes it odd looking.
Instead of pointing always down or up, point down when not toggled and
animate a rotation when toggled.

https://bugzilla.gnome.org/show_bug.cgi?id=756568

10 years agogtkplacesview: tweak ui to allow more server rows
Carlos Soriano [Wed, 23 Sep 2015 17:55:11 +0000 (19:55 +0200)]
gtkplacesview: tweak ui to allow more server rows

Following design guidance, reduce row height and increase
popover height so the user is allowed to see more than 3
rows.

https://bugzilla.gnome.org/show_bug.cgi?id=756568

10 years agogtkplacesview: improve heuristics for external drives
Carlos Soriano [Wed, 14 Oct 2015 19:48:06 +0000 (21:48 +0200)]
gtkplacesview: improve heuristics for external drives

Following the sidebar on commit b0989b190df, improve the way
we check when a drive is external or not.

https://bugzilla.gnome.org/show_bug.cgi?id=756589

10 years agogtkplacesview: remove dead code
Carlos Soriano [Wed, 14 Oct 2015 19:47:39 +0000 (21:47 +0200)]
gtkplacesview: remove dead code

This is checked on add_volume inside the loop.

https://bugzilla.gnome.org/show_bug.cgi?id=756589

10 years agogtkplacesview: remove dead code
Carlos Soriano [Wed, 14 Oct 2015 19:47:03 +0000 (21:47 +0200)]
gtkplacesview: remove dead code

This is checked on is_removable_volume

https://bugzilla.gnome.org/show_bug.cgi?id=756589

10 years agogtkplacessidebar: improve heuristics for external drives
Carlos Soriano [Wed, 14 Oct 2015 19:42:16 +0000 (21:42 +0200)]
gtkplacessidebar: improve heuristics for external drives

Since the change to use GtkPlacesView we don't want to show
internal storage on the sidebar.

In our case we were checking for drive_can_eject and
drive_is_media_removable.

However for some external hard drives it's reported that they
are not ejectable nor the have removable media. So the only
attribute that they have different from internal drives is that
they can be stopped.
So check for if the drive can be stopped to decide if it is
external or internal.

On the way realized we don't need to check for the mounts associated
with the volume to know if the volume can be ejected or not. So remove
that code.

https://bugzilla.gnome.org/show_bug.cgi?id=756589

10 years agomir: add mircookie as a dependency
William Hua [Thu, 15 Oct 2015 15:20:32 +0000 (16:20 +0100)]
mir: add mircookie as a dependency

10 years agotexthandle: Ensure handles are invalidated on mode changes
Carlos Garnacho [Wed, 14 Oct 2015 15:27:53 +0000 (17:27 +0200)]
texthandle: Ensure handles are invalidated on mode changes

Otherwise the "cursor" handle stays with "cursor" appearance instead of
"selection end" when a text selection is started.

10 years agotexthandle: small refactor
Carlos Garnacho [Wed, 14 Oct 2015 15:41:12 +0000 (17:41 +0200)]
texthandle: small refactor

These long enums are used too often, shorten things a bit with temp vars.

10 years agotexthandle: Fix Y positioning of text handles
Carlos Garnacho [Wed, 14 Oct 2015 15:21:25 +0000 (17:21 +0200)]
texthandle: Fix Y positioning of text handles

It is assumed that border.top is the same than pointing_to.height (which
equals the strong cursor position), which is not since some time ago.

The border calculation has been move on top too, it is now used in the
Y position one, and doesn't depend on anything we calculate later.

10 years agotexthandle: Fix handle dragging on wayland
Carlos Garnacho [Wed, 14 Oct 2015 13:53:51 +0000 (15:53 +0200)]
texthandle: Fix handle dragging on wayland

Text handles are subsurfaces on wayland, so sort of their own toplevel.
This made gtk_widget_translate_coordinates() to bail out there, resulting
in text handles being mispositioned and jumpy. To fix this, translate to
toplevel GtkWindow coordinates manually, and translate coordinates from
there.

Along the way, the coordinates reported in ::handle-dragged have been
fixed so there is no small jumps in either axis (most noticeable in the
X axis when you started dragging, and in the Y axis when moving between
lines of different heights.

10 years agogtkplacessidebar: Show drives with removable media
Ross Lagerwall [Sun, 27 Sep 2015 14:59:49 +0000 (15:59 +0100)]
gtkplacessidebar: Show drives with removable media

Some drives have removable media that is not ejectable (e.g. a laptop's
SD card reader). Show volumes on these drives in the sidebar.

https://bugzilla.gnome.org/show_bug.cgi?id=755654

10 years agoUpdated Basque language
Inaki Larranaga Murgoitio [Wed, 14 Oct 2015 10:43:51 +0000 (12:43 +0200)]
Updated Basque language

10 years agomir: support more pixel formats
William Hua [Tue, 13 Oct 2015 09:18:11 +0000 (10:18 +0100)]
mir: support more pixel formats

10 years agoGtkWindow: Enlarge the type hint private field
Jonas Ådahl [Tue, 13 Oct 2015 12:53:39 +0000 (20:53 +0800)]
GtkWindow: Enlarge the type hint private field

Make it what it is - the enum - so that that it is sure that the hint
will fit in the field. Without this, any hint that doesn't fit in 3
bits will be truncated to the 3 least significant bits, causing
unexpected behaviour.

https://bugzilla.gnome.org/show_bug.cgi?id=756496

10 years agoUpdated Czech translation
Marek Černocký [Tue, 13 Oct 2015 10:02:56 +0000 (12:02 +0200)]
Updated Czech translation

10 years agoGdkAppLaunchContext: Use the display name for X11
Olivier Fourdan [Mon, 12 Oct 2015 14:11:11 +0000 (16:11 +0200)]
GdkAppLaunchContext: Use the display name for X11

Using a NULL GAppInfo with g_app_launch_context_get_display() will
generate a critical warning in gio.

Use the display name instead as we don't have any valid GAppInfo to pass
to g_app_launch_context_get_display().

bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=756439

10 years agotextview: Ensure magnifier popover points within widget area
Carlos Garnacho [Mon, 12 Oct 2015 22:24:18 +0000 (00:24 +0200)]
textview: Ensure magnifier popover points within widget area

Otherwise the popopver will be automatically unmapped in
_gtk_popover_update_child_visible() when the X axis (coming more
or less directly from events) goes outside the textview.

10 years agopopover: Invalidate borders on tail position changes
Carlos Garnacho [Mon, 12 Oct 2015 22:21:43 +0000 (00:21 +0200)]
popover: Invalidate borders on tail position changes

There's nothing doing this explicitly, so tail position changes may
leave trails of older positions.

https://bugzilla.gnome.org/show_bug.cgi?id=756449

10 years agowayland: Set a more believable crossing detail on pointer enter/leave
Carlos Garnacho [Fri, 9 Oct 2015 14:14:31 +0000 (16:14 +0200)]
wayland: Set a more believable crossing detail on pointer enter/leave

GDK_NOTIFY_ANCESTOR would happen when the pointer crosses across a direct
parent/child. However nonlinear events are more likely, specially when
the pointer moves across toplevels (either different apps, or menus being
popped up over the pointer position).

This makes popping up comboboxes and other menus that fall over the pointer
position possible. With the previous detail the GtkMenu code misinterpreted
the crossing event, making it think the button release coming right after
should dismiss the popup, which made menus just flash on the screen unless
you kept the button pressed.

10 years agogtk-query-settings: Add license header
Timm Bäder [Mon, 12 Oct 2015 11:11:36 +0000 (13:11 +0200)]
gtk-query-settings: Add license header

10 years agoMSVC builds: Fix "install"
Chun-wei Fan [Mon, 12 Oct 2015 15:22:35 +0000 (23:22 +0800)]
MSVC builds: Fix "install"

Use $(GlibEtcInstallRoot) when invoking glib-compile-schemas, as CopyDir
is not GlibInstallRoot for GTK+ (due to quoting issues), meaning that the
glib-compile-schemas tool may not be found in certain cases.

Issue pointed out by Ignacio Casal Quinteiro.

10 years agoAdd gtk-query-settings
Timm Bäder [Wed, 7 Oct 2015 09:26:53 +0000 (11:26 +0200)]
Add gtk-query-settings

A small utility binary to query all properties of GtkSettings.

https://bugzilla.gnome.org/show_bug.cgi?id=756174

10 years agostylecontext: Make sure style is valid when looking up style properties
Benjamin Otte [Sat, 10 Oct 2015 21:21:45 +0000 (23:21 +0200)]
stylecontext: Make sure style is valid when looking up style properties

Otherwise, the validation may happen vey automatically some time during
the style property and that will most likely cause a crash.

https://bugzilla.gnome.org/show_bug.cgi?id=756338

10 years agoAdwaita: osd spinbutton fixes
Lapo Calamandrei [Sat, 10 Oct 2015 15:42:40 +0000 (17:42 +0200)]
Adwaita: osd spinbutton fixes

10 years agoAdwaita: stop consider buttons on osd 'linked'
Lapo Calamandrei [Fri, 9 Oct 2015 14:27:30 +0000 (16:27 +0200)]
Adwaita: stop consider buttons on osd 'linked'

we used to consider every button inside osd containers linked,
this is not true anymore, now those buttons behave normally.
This will clearly cause breakage in applications.

10 years agogtkprintoperation: job names must not exceed 255 chars
Felipe Borges [Fri, 2 Oct 2015 15:15:26 +0000 (17:15 +0200)]
gtkprintoperation: job names must not exceed 255 chars

According to http://datatracker.ietf.org/doc/rfc2911/, The 'name'
attribute syntax is essentially the same as 'text', including the
REQUIRED support of UTF-8 except that the sequence of characters
is limited so that its encoded form MUST NOT exceed 255 (MAX) octets.

CUPS will not print jobs with names exceeding 255 characters.

https://bugzilla.gnome.org/show_bug.cgi?id=755988

10 years agoim context simple: Add documentation
Matthias Clasen [Fri, 9 Oct 2015 04:17:09 +0000 (00:17 -0400)]
im context simple: Add documentation

Document that GtkIMContextSimple is loading additional compose
tables. Also document Ctrl-Shift-u.

10 years agoGtkIMContextSimple: Load locale compose tables dynamically.
Takao Fujiwara [Mon, 7 Sep 2015 09:10:19 +0000 (18:10 +0900)]
GtkIMContextSimple: Load locale compose tables dynamically.

Load /usr/share/X11/locale/$LOCALE/Compose and $HOME/.XCompose
dynamically.

https://bugzilla.gnome.org/show_bug.cgi?id=721120

10 years agoAdd gtk_compose_table_new_with_file() to create GtkComposeTable
Takao Fujiwara [Mon, 7 Sep 2015 09:10:16 +0000 (18:10 +0900)]
Add gtk_compose_table_new_with_file() to create GtkComposeTable

https://bugzilla.gnome.org/show_bug.cgi?id=721120

10 years agoGtkIMContextSimple: Change guint to guint16 in gtkimcontextsimple.c
Takao Fujiwara [Thu, 3 Sep 2015 08:43:52 +0000 (17:43 +0900)]
GtkIMContextSimple: Change guint to guint16 in gtkimcontextsimple.c

GtkComposeTable and GtkComposeTableCompact use guint16 for the data.

https://bugzilla.gnome.org/show_bug.cgi?id=721120

10 years agoGtkIMContextSimple: export _gtk_check_compact_table() and GtkComposeTable
Takao Fujiwara [Thu, 3 Sep 2015 08:43:49 +0000 (17:43 +0900)]
GtkIMContextSimple: export _gtk_check_compact_table() and GtkComposeTable

Some functions need to be exported if X11 compose files are loaded.

https://bugzilla.gnome.org/show_bug.cgi?id=721120

10 years agowin32: use the same parameter name as the implementation
Ignacio Casal Quinteiro [Thu, 8 Oct 2015 15:48:57 +0000 (17:48 +0200)]
win32: use the same parameter name as the implementation

10 years agoAdwaita: simplify spibutton styling a bit
Lapo Calamandrei [Thu, 8 Oct 2015 15:18:50 +0000 (17:18 +0200)]
Adwaita: simplify spibutton styling a bit

10 years agoiconhelper: Track icon-name fallback usage in the GIcon
Benjamin Otte [Thu, 8 Oct 2015 12:34:39 +0000 (14:34 +0200)]
iconhelper: Track icon-name fallback usage in the GIcon

Passing GTK_ICON_LOOKUP_GENERIC_FALLBACK to the icon lookup doesn't work
for GIcons, so we have to make sure we use the right GThemedIcon.

Fixes image-icon-name-use-fallback reftest.

10 years agoreftests: Rename reftest
Bastien Nocera [Thu, 8 Oct 2015 11:36:52 +0000 (13:36 +0200)]
reftests: Rename reftest

After figuring out what the actual problem is, name the reftest
properly.
The actual problem is that the use-fallback property is ignored when
using an icon-name on GtkImage.

10 years agoreftests: Add test for GtkImage use-fallback property
Bastien Nocera [Thu, 8 Oct 2015 11:36:52 +0000 (13:36 +0200)]
reftests: Add test for GtkImage use-fallback property

Fallback seems to be working in the GtkIconTheme test suite, but fails
in GtkImage itself.

This is a test for a bug in the Bluetooth settings. An icon named
"phone-apple-iphone" should fallback to "phone" if the
gnome-icon-theme-extras package isn't installed.

10 years agoSmall cleanup
Matthias Clasen [Thu, 8 Oct 2015 11:20:26 +0000 (07:20 -0400)]
Small cleanup

Use g_clear_object in gtkdnd.c.

10 years agocolor chooser: Render icons sharp at scale 2
Matthias Clasen [Thu, 8 Oct 2015 03:19:32 +0000 (23:19 -0400)]
color chooser: Render icons sharp at scale 2

We need to load the icons at the right scale, and render them
to a surface with the right scale too.

https://bugzilla.gnome.org/show_bug.cgi?id=756195

10 years agogtkfilesystem: protect against null filesystem type
Carlos Soriano [Wed, 7 Oct 2015 23:19:19 +0000 (01:19 +0200)]
gtkfilesystem: protect against null filesystem type

The filesystem:type attribute could be NULL, then g_strv_contains
will crash if that happens.
Just don't call it if the attribute is not set.

10 years agowayland: Allow falling back to compatibility EGL contexts
Emmanuele Bassi [Wed, 7 Oct 2015 14:26:53 +0000 (15:26 +0100)]
wayland: Allow falling back to compatibility EGL contexts

If the shared context is in legacy mode, or if the creation of a core
profile context failed, we fall back to an EGL context in compatibility
mode.

Since we're relying on a fairly new EGL implementation for Wayland, we
don't fall back to the older EGL API, and instead we always require the
EGL_KHR_create_context extension.

https://bugzilla.gnome.org/show_bug.cgi?id=756142

10 years agodocs: Improve description of gdk_gl_context_is_legacy()
Emmanuele Bassi [Wed, 7 Oct 2015 07:50:23 +0000 (08:50 +0100)]
docs: Improve description of gdk_gl_context_is_legacy()

Explain why this function is available, and why you may need it.

https://bugzilla.gnome.org/show_bug.cgi?id=756142

10 years agoAllow testglarea to work with legacy GL contexts
Emmanuele Bassi [Tue, 6 Oct 2015 20:59:59 +0000 (21:59 +0100)]
Allow testglarea to work with legacy GL contexts

Use the 1.30 GLSL shading language for the fragment and vertex shaders.

https://bugzilla.gnome.org/show_bug.cgi?id=756142

10 years agoControl legacy GL context via environment variable
Emmanuele Bassi [Tue, 6 Oct 2015 18:57:45 +0000 (19:57 +0100)]
Control legacy GL context via environment variable

For testing purposes, we may want to force the creation of legacy GL
contexts via an environment variable.

https://bugzilla.gnome.org/show_bug.cgi?id=756142

10 years agox11: Create legacy GLX contexts
Emmanuele Bassi [Tue, 6 Oct 2015 17:59:35 +0000 (18:59 +0100)]
x11: Create legacy GLX contexts

If GLX has support for the GLX_ARB_create_context_profile extension,
then we use the GLX_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB; if it does
not, we fall back to the old glXCreateNewContext() API.

We use the shared GdkGLContext to decide whether the GLX context should
use the legacy bit or not.

https://bugzilla.gnome.org/show_bug.cgi?id=756142

10 years agogl: Use older GLSL shaders with legacy contexts
Emmanuele Bassi [Tue, 6 Oct 2015 18:55:43 +0000 (19:55 +0100)]
gl: Use older GLSL shaders with legacy contexts

If we're using modern GLSL, then we should stop using deprecated
modifiers, like 'varying' and 'attribute', as well as deprecated global
variables, like 'gl_FragColor'.

On the other hand, with legacy contexts we should be using older GLSL
shaders, to maximize compatibility.

https://bugzilla.gnome.org/show_bug.cgi?id=756142

10 years agogl: Store the legacy bit in the GL program data
Emmanuele Bassi [Tue, 6 Oct 2015 18:55:07 +0000 (19:55 +0100)]
gl: Store the legacy bit in the GL program data

We need to know if we're using a legacy GL context in various places.

https://bugzilla.gnome.org/show_bug.cgi?id=756142

10 years agogdk: Allow querying if a GL context is in legacy mode
Emmanuele Bassi [Tue, 6 Oct 2015 17:54:58 +0000 (18:54 +0100)]
gdk: Allow querying if a GL context is in legacy mode

We want to have the ability to fall back to legacy GL contexts when
creating them. In order to do so, we need to store the legacy bit on the
GdkGLContext, as well as being able to query it.

Setting the legacy bit from outside GDK is not possible; we cannot
create GL contexts in 3.2 core profile *and* compatibility modes at the
same time, and if we allowed users to select the legacy mode themselves,
it would break the creation of the GdkWindow's paint GL context.

What we do allow is falling back to legacy GL context if the platform
does not support 3.2 core profiles — for instance, on older GPUs or
inside virtualized environments.

We are also going to use the legacy bit internally, to choose which GL
API we can use when drawing GL content.

https://bugzilla.gnome.org/show_bug.cgi?id=756142

10 years agotextiter: fix bug in _gtk_text_btree_get_iter_at_last_toggle()
Sébastien Wilmet [Tue, 22 Sep 2015 12:40:57 +0000 (14:40 +0200)]
textiter: fix bug in _gtk_text_btree_get_iter_at_last_toggle()

If the last tag toggle is the end iter, the function returned the wrong
tag toggle.

This resulted in some bugs where the view wasn't relayout/redrawn
correctly.

The function also always returned TRUE, probably because the return
value is used nowhere. But for consistency with
_gtk_text_btree_get_iter_at_first_toggle(), it's better to keep the
return value, and also because otherwise the function would be wrong (it
doesn't always return a tag toggle, if there is none).

https://bugzilla.gnome.org/show_bug.cgi?id=755413

10 years agoGtkPopover: Don't apply shape on wayland
Timm Bäder [Thu, 1 Oct 2015 11:08:37 +0000 (13:08 +0200)]
GtkPopover: Don't apply shape on wayland

Popovers are subsurfaces on wayland so we don't need that, and the shape
messed up hidpi popovers there.

10 years agowayland: Don't ignore wl_keyboard.leave if surface is gone
Jonas Ådahl [Tue, 6 Oct 2015 06:30:28 +0000 (14:30 +0800)]
wayland: Don't ignore wl_keyboard.leave if surface is gone

keyboard_handle_leave() might be called with a NULL surface resource
(for example if the surface was destroyed after the event was sent). If
so, we should still deal with the keyboard focus lost event, otherwise
we will both leak (the keyboard_focus GdkWindow reference) and miss
stopping the key repeat timer.

https://bugzilla.gnome.org/show_bug.cgi?id=755927

10 years agoFix accessibility not getting initialized in gtk_init() if a default display is alrea...
Christoph Reiter [Tue, 6 Oct 2015 22:00:35 +0000 (00:00 +0200)]
Fix accessibility not getting initialized in gtk_init() if a default display is already set

_gtk_accessibility_init() only gets called if the default
display changes, but in case gdk_init() is called before gtk_init()
the default display is already set and no property notification occurs.

This can happen quite easily in pygobject where
"from gi.repository import Gdk, Gtk"
will call gdk_init() followed by gtk_init() in the Python overrides.

This fixes it by checking for a default display in all cases.

10 years agoGdkAppLaunchContext: Set DISPLAY variable for X11
Olivier Fourdan [Tue, 15 Sep 2015 12:17:05 +0000 (14:17 +0200)]
GdkAppLaunchContext: Set DISPLAY variable for X11

The environment variable DISPLAY makes sense only for X11, so set its
value in the X11 backend.

https://bugzilla.gnome.org/show_bug.cgi?id=754983

10 years agoassistant: Deal with spontaneous page disappearance
Matthias Clasen [Mon, 5 Oct 2015 12:19:07 +0000 (08:19 -0400)]
assistant: Deal with spontaneous page disappearance

Removing pages from the assistant with gtk_widget_destroy() used
to work. It broke with the recent interposition of a box between
each page and the notebook. Fix this by cleaning up when the box
child is removed.

https://bugzilla.gnome.org/show_bug.cgi?id=756042

10 years agoUpdated German translation
Wolfgang Stöggl [Sun, 4 Oct 2015 09:04:15 +0000 (09:04 +0000)]
Updated German translation

10 years agoflowbox: correct the behavior with "can-focus"==FALSE
Rafal Luzynski [Sun, 23 Aug 2015 00:32:21 +0000 (02:32 +0200)]
flowbox: correct the behavior with "can-focus"==FALSE

In fact there were two issues:

1. GtkFlowBoxChild with "can-focus"==FALSE should pass the focus
to its child immediately.
2. GtkFlowBox with "can-focus"==FALSE should cease its custom keynav
implementation and fall back to the default GtkContainer behavior
which is more natural.

Thanks to these changes the flow box can act as a better replacement
for GtkGrid and similar containers.

https://bugzilla.gnome.org/show_bug.cgi?id=753371

10 years agoBump version to 3.19.0
Matthias Clasen [Sun, 4 Oct 2015 02:41:06 +0000 (22:41 -0400)]
Bump version to 3.19.0

Otherwise, internal use of new API causes deprecation warnings.

10 years agoinspector: Add a reset button for settings
Matthias Clasen [Thu, 17 Sep 2015 23:14:37 +0000 (19:14 -0400)]
inspector: Add a reset button for settings

This is exercising the new gtk_settings_reset_property api.

https://bugzilla.gnome.org/show_bug.cgi?id=755008

10 years agoAdd gtk_settings_reset_property
Matthias Clasen [Thu, 17 Sep 2015 23:13:39 +0000 (19:13 -0400)]
Add gtk_settings_reset_property

This api undoes an application-specific override and makes the
setting follow the system-wide values again.

https://bugzilla.gnome.org/show_bug.cgi?id=755008

10 years agostyle context: Avoid a compiler warning
Matthias Clasen [Sun, 4 Oct 2015 02:40:27 +0000 (22:40 -0400)]
style context: Avoid a compiler warning

10 years agoBug 753992 - im-quartz discard_preedit segmentation fault
John Ralls [Fri, 18 Sep 2015 22:12:24 +0000 (15:12 -0700)]
Bug 753992 - im-quartz discard_preedit segmentation fault

Replace checking if the NSView is really a GdkWindow, which will crash
in the likely event it's not a GObject, with ensuring that the parent
GdkWindow is really a GdkWindowQuartz.

10 years agogdk: Add gdk_rectangle_equal()
Benjamin Otte [Sun, 13 Sep 2015 14:00:22 +0000 (16:00 +0200)]
gdk: Add gdk_rectangle_equal()

There's enough users inside GTK to warrant this convenience function.

10 years agotexttag: add gtk_text_tag_changed()
Sébastien Wilmet [Thu, 24 Sep 2015 08:59:32 +0000 (10:59 +0200)]
texttag: add gtk_text_tag_changed()

The function is useful for a GtkTextTag subclass that adds new
properties.

https://bugzilla.gnome.org/show_bug.cgi?id=755416

10 years agogdk: Add version macros for 3.20
Benjamin Otte [Sun, 13 Sep 2015 13:36:49 +0000 (15:36 +0200)]
gdk: Add version macros for 3.20

10 years agostyle context: Formatting fixes
Matthias Clasen [Sun, 4 Oct 2015 01:38:20 +0000 (21:38 -0400)]
style context: Formatting fixes

10 years agoAdd a test for gtk_style_context_list_classes
Matthias Clasen [Sat, 3 Oct 2015 21:38:36 +0000 (17:38 -0400)]
Add a test for gtk_style_context_list_classes

This test failed before the previous commit.

10 years agoFix gtk_style_context_list_classes
Matthias Clasen [Sat, 3 Oct 2015 21:37:34 +0000 (17:37 -0400)]
Fix gtk_style_context_list_classes

The function was always returning NULL.

10 years agoswitch: Unclip the slider shadow
Matthias Clasen [Sat, 3 Oct 2015 20:20:50 +0000 (16:20 -0400)]
switch: Unclip the slider shadow

This commit arranges things so the shadow of the slider can
extend outside the widget, even if the switch itself has no
shadow.

https://bugzilla.gnome.org/show_bug.cgi?id=755791

10 years agofixup
Matthias Clasen [Sat, 3 Oct 2015 18:08:42 +0000 (14:08 -0400)]
fixup

10 years ago3.18.1
Matthias Clasen [Fri, 2 Oct 2015 12:35:33 +0000 (08:35 -0400)]
3.18.1

10 years agoFix make check
Matthias Clasen [Sat, 3 Oct 2015 04:00:51 +0000 (00:00 -0400)]
Fix make check

10 years agofile chooser: Clear busy cursor before showing error
Matthias Clasen [Fri, 2 Oct 2015 10:57:05 +0000 (06:57 -0400)]
file chooser: Clear busy cursor before showing error

It looks odd to still have a busy cursor while the error
dialog is presented.

10 years agofile chooser: Improve search focus handling
Matthias Clasen [Fri, 2 Oct 2015 03:32:30 +0000 (23:32 -0400)]
file chooser: Improve search focus handling

Move focus to list when search results appear to make it
possible to select the first search result by just hitting
Enter. To keep this from interfering with keynav, we need
to make sure that we still handle Escape to search. And when
search comes up empty, we need to move the focus back to the
entry.

https://bugzilla.gnome.org/show_bug.cgi?id=755926

10 years agofile chooser: Don't select in the search entry
Matthias Clasen [Fri, 2 Oct 2015 02:59:57 +0000 (22:59 -0400)]
file chooser: Don't select in the search entry

The stack calls gtk_widget_grab_focus on the last focus widget,
which selects the text in the entry, so we need to make sure to
move the focus there first to keep that from happening.

https://bugzilla.gnome.org/show_bug.cgi?id=755931

10 years agoapp: Warn when trying to add windows on an inert instance
Emmanuele Bassi [Thu, 1 Oct 2015 17:58:32 +0000 (18:58 +0100)]
app: Warn when trying to add windows on an inert instance

Application windows can only be added after the application has been
started.

https://bugzilla.gnome.org/show_bug.cgi?id=755954

10 years agowindow: ignore resize increments for maximized/fullscreen
Olivier Fourdan [Thu, 1 Oct 2015 13:46:50 +0000 (15:46 +0200)]
window: ignore resize increments for maximized/fullscreen

Once a window is maximized/fullscreen, resize increments should be
ignored otherwise the window may appear smaller than the screen size.

That also applies to configure requests as well.

https://bugzilla.gnome.org/show_bug.cgi?id=751368

10 years agoUpdated Irish translation
Seán de Búrca [Thu, 1 Oct 2015 02:32:54 +0000 (20:32 -0600)]
Updated Irish translation

10 years agoheader bar: Show a non-pixellated app icon
Matthias Clasen [Wed, 30 Sep 2015 22:42:20 +0000 (18:42 -0400)]
header bar: Show a non-pixellated app icon

Load a hi-dpi icon when we are running with scale=2.

https://bugzilla.gnome.org/show_bug.cgi?id=751787

10 years agogdkgears: Use a headerbar
Matthias Clasen [Wed, 30 Sep 2015 01:19:06 +0000 (21:19 -0400)]
gdkgears: Use a headerbar

This is a testcase for
https://bugzilla.gnome.org/show_bug.cgi?id=755675

10 years agoGtkPopover: Make transitions faster
Timm Bäder [Wed, 23 Sep 2015 15:36:39 +0000 (17:36 +0200)]
GtkPopover: Make transitions faster

https://bugzilla.gnome.org/show_bug.cgi?id=755528

10 years agoheader bar: Don't leave a dangling pointer
Matthias Clasen [Tue, 29 Sep 2015 19:15:06 +0000 (15:15 -0400)]
header bar: Don't leave a dangling pointer

This might be the cause for some crashes, like
https://bugzilla.redhat.com/show_bug.cgi?id=1264558

10 years agoUse direct GValue access in our marshallers
Matthias Clasen [Tue, 29 Sep 2015 13:42:02 +0000 (09:42 -0400)]
Use direct GValue access in our marshallers

These are used for every signal emission, so we should
make them as fast as we can.

10 years agorounded rect: cache arcs
Matthias Clasen [Tue, 29 Sep 2015 13:40:00 +0000 (09:40 -0400)]
rounded rect: cache arcs

We are only ever drawing axis-aligned quarter arcs here. By caching
these paths, sincos drops from the profiles for drawing-heavy
workloads.

10 years agocontainer: Avoid duplicate calls to should_propagate
Matthias Clasen [Tue, 29 Sep 2015 02:45:11 +0000 (22:45 -0400)]
container: Avoid duplicate calls to should_propagate

We were calling gtk_container_should_propagate_draw
twice for each child. We can avoid this by splitting
out an gtk_container_propagate_draw_internal function.

10 years agoDrop some redundant cairo_save calls
Matthias Clasen [Mon, 28 Sep 2015 19:08:26 +0000 (15:08 -0400)]
Drop some redundant cairo_save calls

Almost all callers of _gtk_widget_draw already did their own
cairo_save/restore, so drop the save/restore calls inside
_gtk_widget_draw and instead fix the last caller, gtk_widget_draw,
to do the same.

10 years agoTrivial: Move a cairo_save call
Matthias Clasen [Mon, 28 Sep 2015 19:02:36 +0000 (15:02 -0400)]
Trivial: Move a cairo_save call

Move the cairo_save call to where it is needed.